{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Import required modules\n",
    "import numpy as np\n",
    "from scipy import signal\n",
    "import matplotlib.pyplot as plt\n",
    "import random\n",
    "import seaborn as sns\n",
    "sns.set_style(\"white\")\n",
    "\n",
    "def db(x):\n",
    "    \"\"\" Convert linear value to dB value \"\"\"\n",
    "    return 10*np.log10(x)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Generate a test data steam\n",
    "# samples1 = np.linspace(0,1 / (60 * 1e6),10000)\n",
    "# samples2 = np.linspace(0,1 / (120 * 1e6),10000)\n",
    "samples3 = np.linspace(0,0.0001,10000)\n",
    "\n",
    "data = np.zeros(10000)\n",
    "\n",
    "data += np.sin(samples3 * 15 * 1e6 * 2 * np.pi) \n",
    "data += np.sin(samples3 * 123 * 1e6 * 2 * np.pi)  \n",
    "data += np.sin(samples3 * 171 * 2 * 1e6 * np.pi)\n",
    "data += np.sin(samples3 * 351 * 2 * 1e6 * np.pi)\n",
    "# data = noise + cw_signal"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "ceffs = [0.01135324937009,  0.01773498104665, -0.05199118441139,  -0.1890348116228,\n",
    "   -0.05818001261825,   0.3047305593289,   0.3047305593289, -0.05818001261825,\n",
    "    -0.1890348116228, -0.05199118441139,  0.01773498104665,  0.01135324937009]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7fd7652ec100>]"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(ceffs)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7fd764a42550>]"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7fd764a2d730>]"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA3MAAAHSCAYAAABGlpIYAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/MnkTPAAAACXBIWXMAAAsTAAALEwEAmpwYAAAwsklEQVR4nO3df5BV12En+O/rbhpBIyFAbhrLBJsIjR0b2cpEI6PZtMswgBHC6pK1M1Vb8dSwTsml9VqlKM6WFWe1kkblmkxc2sibnVkoJRnN1ialGa0LZd2bCStkB2LPWDuyGRZHtoVjbCSruyV+Nz/6x+u7fzQ03fwQYAHN6ff5VEH3O+/efue+d9+993vPuefWqqqqAgAAQFGaJrsCAAAAXDxhDgAAoEDCHAAAQIGEOQAAgAIJcwAAAAUS5gAAAArUMtkVOJ/bb789N95442RXAwAAYFK8/vrr+c53vnNG+QWFueXLl6etrS1NTU1pbm7O1772tRw4cCC/9Vu/lddffz033nhj/vAP/zCzZ89OkmzYsCHPPfdcmpqa8nu/93v59V//9STJzp078/DDD+f48eP52Mc+li996Uup1Wpv+9o33nhjvva1r13s8gIAAEwJ99xzz1nLL7ib5TPPPJPnn39+LFht3Lgxy5Yty+bNm7Ns2bJs3LgxSbJr1650d3enu7s7Tz/9dB577LHU6/UkyaOPPprHH388mzdvzu7du7N169Z3ulwAAAAN6Re+Zm7Lli3p6upKknR1deWFF14YK1+7dm1aW1uzcOHCLFq0KDt27EhfX1/6+/tz6623plarpaurK1u2bLkkCwEAANBoLjjMfeYzn8k999yTZ599Nkmyd+/etLe3J0na29uzb9++JElvb286OjrG5ps/f356e3vPKO/o6Ehvb+8lWQgAAIBGc0HXzP35n/955s+fn71792b9+vVZvHjxOaetquqMslqtds5yAAAALt4FtczNnz8/STJv3rysXLkyO3bsyLx589LX15ck6evry9y5c5OMtrj19PSMzdvb25v29vYzynt6esZa9gAAALg45w1zR48eTX9//9jv3/rWt7JkyZIsX748mzZtSpJs2rQpK1asSDI68mV3d3cGBwezZ8+e7N69O7fcckva29vT1taW7du3p6qqCfMAAABwcc7bzXLv3r353Oc+lySp1+u566670tnZmaVL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",
      "text/plain": [
       "<Figure size 1080x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(15,8))\n",
    "freq = np.abs(np.fft.rfft(data)) \n",
    "plt.plot(freq)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "# pfb 3 x 4\n",
    "data_pfb = data.reshape(2500,4).T\n",
    "ceffs_pfb = np.array(ceffs).reshape(3,4).T"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[ 0.        ,  0.09610896,  0.05690379],\n",
       "       [ 0.01361057, -0.25058785, -0.06852664],\n",
       "       [-0.09398802,  0.4485113 ,  0.03812358],\n",
       "       [ 0.01598947,  0.05536552, -0.02936678]])"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_pfb[:,0:3] * ceffs_pfb"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "data_sum = np.zeros((4,2498))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/tmp/ipykernel_13504/434390230.py:4: ComplexWarning: Casting complex values to real discards the imaginary part\n",
      "  data_sum[:,i] = np.fft.fft(temp.sum(axis=1))\n"
     ]
    }
   ],
   "source": [
    "# 多相滤波器\n",
    "for i in range(2498):\n",
    "    temp = data_pfb[:,i:i+3] * ceffs_pfb\n",
    "    data_sum[:,i] = np.fft.fft(temp.sum(axis=1))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7fd764232d30>]"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(np.abs(np.fft.rfft(data_sum[0])))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7fd763f88f70>]"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXcAAAD4CAYAAAAXUaZHAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/MnkTPAAAACXBIWXMAAAsTAAALEwEAmpwYAAAa6klEQVR4nO3de3CUdb7n8U9354YkQRLpNCibEQVdL+DskcU4qEtiEkID9iBOzdSuVmXGwk3NVtZBnfWywxZTjnv0eKhltkorkXVk6pTnjINOsKp3tpAgk6yOlxnFLEdXYSRLQNI9JCYhIbfu/u0fSZqAgafBNN2/9v2qsjp5+nm6vz/p/uTbv34uLmOMEQAgo7hTXQAAYPoR7gCQgQh3AMhAhDsAZCDCHQAyUFaqC5CkZcuW6fLLL091GQBglaNHj+rdd9+d8r60CPfLL79cr732WqrLAACrrFu37qz3MS0DABmIcAeADES4A0AGItwBIAMR7gCQgQh3AMhAhDsAZCDCPQE79x1V39BoqssAgIQR7g4+7Tyh//hP+/TT37aluhQASBjh7mBwNCpJOtY7mOJKACBxhLsD1/gtl6sCYBPCPUFcjBCATQh3By6X8zoAkG4Idweu8YkZw8QMAIsQ7g4mOnemZQDYhHBPEOEOwCaEe4LIdgA2Idwd8IUqABsR7g7iX6gyLwPAIoS7Azp3ADYi3BNE4w7AJoS7Azp3ADYi3BPEQUwAbEK4Ozj1hWqKCwGA80C4O4gfoZraMgDgvBDuDphyB2Ajwj1B7OcOwCaEuwOmZQDYiHB3RLoDsA/h7oDOHYCNCHcHfKEKwEYJh3s0GlUgENADDzwgSerp6VFtba2qqqpUW1ur3t7e+LoNDQ2qrKxUdXW1Wltbp7/qFOALVQA2STjcf/3rX+uqq66K/97Y2KiysjLt2rVLZWVlamxslCQdPHhQwWBQwWBQ27Zt0+bNmxWNRqe/8ovEnHELADZIKNw7Ozu1d+9erV+/Pr6sublZgUBAkhQIBLR79+74cr/fr5ycHM2fP1+lpaVqa2ub/sovMhp3ADZJKNyfeuopPfLII3K7T63e1dUlr9crSfJ6veru7pYkhUIh+Xy++HolJSUKhULTWfNFRagDsJFjuL/55psqKirSDTfckNADTjU37cqAUyty4jAANslyWuGDDz7Qnj171NLSouHhYfX39+vhhx9WcXGxwuGwvF6vwuGwioqKJEk+n0+dnZ3x7UOhULzDt9NYqNPBA7CJY+f+0EMPqaWlRXv27NGWLVt0yy236Nlnn1V5ebmampokSU1NTaqoqJAklZeXKxgMamRkRB0dHWpvb9fixYuTOoiLgXAHYBPHzv1sNmzYoAcffFA7duzQ3LlztXXrVknSwoULVVNTo1WrVsnj8WjTpk3yeDzTVvDFRqgDsNF5hfuyZcu0bNkySdLs2bO1ffv2Kderq6tTXV3d168OAHBBOEI1QRzEBMAmhLsDDmICYCPCPUE07gBsQrg7INQB2IhwTxAHMQGwCeHugFAHYCPCPUFMzwCwCeHuYCLUyXYANiHcE0TnDsAmhLsDQh2AjQj3hJHyAOxBuCcoRrYDsAjh7oBdIQHYiHBPECcOA2ATwt0BmQ7ARoR7gsh4ADYh3BNEBw/AJoR7gphzB2ATwt0BmQ7ARoR7gsh4ADYh3B2wnzsAGxHuAJCBCPdE0cADsAjh7oAvVAHYiHAHgAxEuDugcQdgI8I9QYQ8AJsQ7g44MhW4OFo++6vePng81WVkjKxUFwAAknTfi+9Jktr/1p/iSjIDnbsD+nYANiLcASADEe4OmHIHYCPCPUF8sQrAJoQ7AGQgx3AfHh7W+vXrtXbtWvn9fv3yl7+UJPX09Ki2tlZVVVWqra1Vb29vfJuGhgZVVlaqurpara2tyav+oqBjB2Afx3DPycnR9u3b9frrr6upqUmtra3at2+fGhsbVVZWpl27dqmsrEyNjY2SpIMHDyoYDCoYDGrbtm3avHmzotFo0geSbEQ8AJs4hrvL5dLMmTMlSZFIRJFIRC6XS83NzQoEApKkQCCg3bt3S5Kam5vl9/uVk5Oj+fPnq7S0VG1tbckbQZIx1Q7ARgnNuUejUd1111269dZbdeutt2rJkiXq6uqS1+uVJHm9XnV3d0uSQqGQfD5ffNuSkhKFQqEklA4AOJuEwt3j8Wjnzp36wx/+oLa2Nn322WdnXXeqvUpcLteFV5hiNO4AbHRee8sUFhZq2bJlam1tVXFxscLhsCQpHA6rqKhIkuTz+dTZ2RnfJhQKxTt8AMDF4Rju3d3d6uvrkyQNDQ3p7bff1oIFC1ReXq6mpiZJUlNTkyoqKiRJ5eXlCgaDGhkZUUdHh9rb27V48eLkjSDJmHMHYCPHE4eFw2E9+uijikajMsZo5cqVWrFihW666SY9+OCD2rFjh+bOnautW7dKkhYuXKiamhqtWrVKHo9HmzZtksfjSfpAko2QB2ATx3C/9tpr4x36ZLNnz9b27dun3Kaurk51dXVfu7h0wJGpAGzEEaoAkIEIdwf07QBsRLgDQAYi3BNk6OEBWIRwd8D3qQBsRLgDQAYi3B0wHQPARoR7gpieAWATwt0JoQ7AQoQ7AGQgwt0BjTsAGxHuAJCBCHcHfJEKwEaEe4LIeAA2IdwBIAMR7g44iAmAjQj3RJHxACxCuDvgC1UANiLcASADEe4OaNwB2IhwB4AMRLg7MEy6A7AQ4Z4gdokEYBPC3QGRDsBGhDsAZCDCPUFMvQOwCeHuhFAHYCHCHQAyEOHugL1kANiIcAeADES4O+CLVAA2ItwBIAMR7g7o3AHYiHBPEBkPwCaO4X7s2DHde++9qqmpkd/v1/bt2yVJPT09qq2tVVVVlWpra9Xb2xvfpqGhQZWVlaqurlZra2vyqr8ICHUANnIMd4/Ho0cffVS///3v9Zvf/EYvv/yyDh48qMbGRpWVlWnXrl0qKytTY2OjJOngwYMKBoMKBoPatm2bNm/erGg0mvSBAABOcQx3r9er66+/XpKUn5+vBQsWKBQKqbm5WYFAQJIUCAS0e/duSVJzc7P8fr9ycnI0f/58lZaWqq2tLXkjuEg49S8Am5zXnPuRI0f0ySefaMmSJerq6pLX65U09gegu7tbkhQKheTz+eLblJSUKBQKTWPJFxehDsBGCYf7wMCA6uvr9fjjjys/P/+s600Vhi6X68KqAwBckITCfXR0VPX19VqzZo2qqqokScXFxQqHw5KkcDisoqIiSZLP51NnZ2d821AoFO/wbUTfDsBGjuFujNETTzyhBQsWqLa2Nr68vLxcTU1NkqSmpiZVVFTElweDQY2MjKijo0Pt7e1avHhxcqoHAEwpy2mFP//5z9q5c6cWLVqku+66S5K0ceNGbdiwQQ8++KB27NihuXPnauvWrZKkhQsXqqamRqtWrZLH49GmTZvk8XiSO4okYsodgI0cw/3mm2/Wp59+OuV9E/u8n6murk51dXVfr7I0Q8YDsAlHqDoi1gHYh3AHgAxEuDtgzh2AjQh3AMhAhHuC6OAB2IRwd0CmA7AR4Q4AGYhwd8B0DAAbEe4AkIEIdweGWXcAFiLcASADEe4OmHMHYCPCHQAyEOHugMYdgI0IdwDIQIQ7AGQgwt3BVBf8BoB0R7gDQAYi3AEgAxHuAJCBCHcHTLkDsBHh7iAaI90B2IdwdxAbb91drhQXAgDngXB3MBHubtIdgEUIdwcTszJush2ARQh3BxNz7i46dwAWIdwdTByhSrQDsAnh7uBU557iQgDgPBDuDibm3NnfHYBNCHcHMVIdgIUIdwccxATARoS7g/i0TGrLAIDzQrg7YFoGgI0IdwcxWncAFnIM98cee0xlZWVavXp1fFlPT49qa2tVVVWl2tpa9fb2xu9raGhQZWWlqqur1drampyqL6IonTsACzmG+7p167Rt27bTljU2NqqsrEy7du1SWVmZGhsbJUkHDx5UMBhUMBjUtm3btHnzZkWj0eRUfpFMNO5MzwCwiWO4L126VLNmzTptWXNzswKBgCQpEAho9+7d8eV+v185OTmaP3++SktL1dbWNv1VX0QT0zJ08ABsckFz7l1dXfJ6vZIkr9er7u5uSVIoFJLP54uvV1JSolAoNA1lps5Ex24MF8sGYI9p/UJ1qvCz/YRbkzt29nkHYIsLCvfi4mKFw2FJUjgcVlFRkSTJ5/Ops7Mzvl4oFIp3+LaKTQp0pmYA2OKCwr28vFxNTU2SpKamJlVUVMSXB4NBjYyMqKOjQ+3t7Vq8ePG0FZsKk5v1WCx1daSzrv7hVJcA4AyO4b5x40Z9//vf16FDh3T77bfrt7/9rTZs2KC33npLVVVVeuutt7RhwwZJ0sKFC1VTU6NVq1bp/vvv16ZNm+TxeJI+iGSK0rmf07ufd+lvntyt/7X/WKpLATBJltMKW7ZsmXL59u3bp1xeV1enurq6r1dVGjHMuZ/T/zk6dozDe4e+1Mob5qa4GgATOELVweRuPUa4A7AE4e5gcp5HCHcAliDcHUSip75F5ShVALYg3B2MRE6FO3PuAGxBuDsYjfKFKgD7EO4ORiZNy0z+GQDSGeHuYHRSoA+N2n2GSwDfHIS7g9PDnc4dgB0IdwejESP3+LnPhiN07gDsQLg7GInGVJCXLUkapnMHYAnC3cFoNKaCvLGzNDDnDsAWhLuDkUhM+blj4T4coXMHYAfC3cFQJKrZl+SM/UznDsAShLuDk8NRFc0k3AHYhXB3cHIkqksvGf9ClWkZAJYg3M8hFjMaHJ08LUO4A7AD4X4Og+PTMAV5Wcr2uDTEfu5nZfl10IGMQ7ifw8BwRJJ0SY5HeVmepOznfuj4gD4LnZj2x73YOBsykF4cL7P3TdY7OCpJmnVJjnKz3Unp3Fc8u1eS1P63/ml/bADfXHTu59AzHu6XzshWYV62+sZ/x1cxLQOkF8L9HHpOjnfuM7JVnJ+jrv6RFFeUvpiWAdIL4X4O4RNDkiRvYa6KZ+bqeP9wiisCgMQQ7ufwRc+gPG6XvAV5uqwgR10DdO5nw7QMkF4I93P4omdIvsI8edwuFc/M1ZcnR067YDYApCvC/RyO9gxq3qV5kqTLCnJljOjeAViBcD8LY4z+Eu5XafFMSdKV47d/+Wt/KssCgIQQ7mfxRe+QugZGtOSKWZKkhSX5kqSD4ekLd8MuJoAk3gvJQLifxZ/auyVJi6+4VJLkLchVQV6WPjk2fUeTRmK8oAEkB+F+Fm98HFLxzBzdcPlY5+5yubT0W0V65/OuaXsOTiEMjKFxn36E+xTCJ4a0659DWnXjXHncp/bxW371ZTp0fEAHpulcMJNPIczHUmAM74XpQbifwRijXwQ/kZHRD5dfedp9d900Tzket/7hnf83Lc81OdyjTNHgG2w0duq9wKm1pwfhPkksZrTljc+0c98X+vGKq3XlZTNPu784P1eBb8/Ty+8d1qedX797nzwtc5IpGnyD9Z48dd6mviHO4TQdCHeNdc2tB/6q7zX8Uf99z0Hd8zdXqL584ZTr/qeV16owL1u1v3pPh44PfK3nnXwK4c7eoa/1WKnCJ2hMhy8nhXsvJ+ibFt+4U/5GojEd6x3S0Z5B/d9jffroSK9aDxzX8f5heQty9czdi3XPzVfIdZbj6Yvzc/XrH/1r/dtt78r/y1b9+zuu0r+7pTR+ndXz0TVw6lw1n3ae0KKSggseV6oYke74+v564tR7IdQ3ZOV7Id0kLdxbWlr0i1/8QrFYTPfcc482bNgw7c8xGo3pH987rHDfsCIxo0g0NnYbiykaMxoYjurE0Kj6hiI6MTSq3sFRHe8fOW1+21uQq2VXFqnmRp/u/Jclysv2OD7v9fNm6X/W36b/8vo/a8sbn2lr8wEtu7JIZQuKtWT+pVpUUiBvQa7c7nOfcOUvk/aZf/GtQ7p90RzNmpF94f9DUoDOHdPh/fFdjyWp9cBx3bZwTgqryQxJCfdoNKqf//zn+tWvfqWSkhKtX79e5eXluvrqq6f1efqHIvpvuw+o5+SIsjxuZbldY/953PK4Xbokx6PCvGwV5GVpzmX5KsjLUklhnq6YPUOXz56hq735mjtrxgU997xLZ+iF+27Wp50n9PpHR/XGxyH9/Rufxe/PzXLrXxRdoitmz1BJYZ68BbmaU5inOfm58hbmKsfj1svvHda3ii/RfyhfqEd2fKSlT+7WdfMK49sU5mVrZq5HM3I8mpmTpbxsj7I9Y+PLdrvkGR9rtselLPfYrcftUrbHLZdrbPdNt0tyu1xyTdxq7NbtcsnlPn3ZxDruSdtO/gRjjFHMjE1jxYxRNGYU6hvruL4cGDvvTpaHmT5MLRozGo3GNBqNaXA0qq7+EXX2DelP7d16ofWQVlwzRwV52fof//uQTo5EtPRbRfIV5mn2zJzxS126le1xK8dz6rV+tk/YSFK4t7W1qbS0VPPnz5ck+f1+NTc3T3u4z56Zoz//5ztT+g98ja9Aj/iu1SPV16pvaFT7j/TqL8cHdLhrQIe7T+rIl4Pa/0WfuvqHdeYOMdkel16472b9m2u8um5uoXbuO6qPjvRo/9FeNX8Sjl/DNdUmQv5ce/S89uFRvfbhUWVN/NFxj/0B0fg/zcS/0MS/leuM5afdF/89fs85tplYNvU66f7mn47d/qbrw9N0fQozMorGxj5ZR6IxjUaNRmOxsz6+x+3SHYvm6O/WLx5vVtx65U9H9A/vHHZ8ronX5kSDovGX3JkNjSY1OZPv/6qvLpxqvak2nXq9cz+eS9JPKhfpnpvnT1XM15KUcA+FQvL5fPHfS0pK1NbWloynSqs3b2Fetm69+jLdevVlX7kvEo2pe2BE4RPDCp8Y0sBwVP+qdLYuv3Tsk8N18wp13bzC07aJxoxOjkR0ciSqgeGIBkejikTHpp1GoybeCU0sG5uaGltmNBYcxkgxI8WMiXfeE7ex+P1jM+fx32Pj62ny+kYel0set1set+R2u+RxuXRZfq5uvbpYrZ8d19GeQY1GY4oao2jUKDr+bj7zTT0RaOa0ZeO3Mmf8fvr9k7eKr5PwtmPrTPWGuxDT9dKbjoeZvlqm54E8Hpey458sJ326zHIp2+1WbrZbl+Xnak5BrhaVFJw2Hfn331ui/7ruRh06PqDj/cPqHhjRwHBEo9GYRsZf36ORWPx1PvG6nfhZEz/HTn9dS6e/5s801d+eqf8gTbHtFOtNuWyKbRfMmfnVFadBUsJ9qm4knUI4FbI8bnkL8+QtzJM0K6FtPG6XCvKyVZCX/vPw31s6/Z0Hvrlysty6xlega8QXqxcqKROkPp9PnZ2d8d9DoZC8Xm8yngoAMIWkhPuNN96o9vZ2dXR0aGRkRMFgUOXl5cl4KgDAFJIyLZOVlaVNmzbp/vvvVzQa1d13362FC6c+KAgAMP2Stp/7HXfcoTvuuCNZDw8AOAd2SgaADES4A0AGItwBIAMR7gCQgdLirJBHjx7VunXrUl0GAFjl6NGjZ73PZbimFQBkHKZlACADEe4AkIEIdwDIQIQ7AGQgwh0AMhDhDgAZyOpwb2lpUXV1tSorK9XY2JjqcqZ07Ngx3XvvvaqpqZHf79f27dslST09PaqtrVVVVZVqa2vV29sb36ahoUGVlZWqrq5Wa2trqkr/img0qkAgoAceeECSfWPo6+tTfX29Vq5cqZqaGn344YfWjeGll16S3+/X6tWrtXHjRg0PD6f9GB577DGVlZVp9erV8WUXUvP+/fu1Zs0aVVZW6sknn5yWSxReaP1PP/20Vq5cqTVr1ujHP/6x+vr60q9+Y6lIJGIqKirM4cOHzfDwsFmzZo05cOBAqsv6ilAoZPbv32+MMebEiROmqqrKHDhwwDz99NOmoaHBGGNMQ0ODeeaZZ4wxxhw4cMCsWbPGDA8Pm8OHD5uKigoTiURSVv9kL774otm4caPZsGGDMcZYN4af/vSn5pVXXjHGGDM8PGx6e3utGkNnZ6dZsWKFGRwcNMYYU19fb1599dW0H8N7771n9u/fb/x+f3zZhdR89913mw8++MDEYjHzox/9yOzduzdl9be2tprR0VFjjDHPPPNMWtZvbec++SLcOTk58Ytwpxuv16vrr79ekpSfn68FCxYoFAqpublZgUBAkhQIBLR7925JUnNzs/x+v3JycjR//nyVlpYm7fqz56Ozs1N79+7V+vXr48tsGkN/f7/ef//9eP05OTkqLCy0agzS2KenoaEhRSIRDQ0Nyev1pv0Yli5dqlmzTr+05PnWHA6H1d/fr29/+9tyuVwKBAIX7f0+Vf3Lly9XVtbYAf433XRT/Mpz6VS/teE+1UW4Q6FQCityduTIEX3yySdasmSJurq64pce9Hq96u7ulpS+43rqqaf0yCOPyO0+9ZKxaQwdHR0qKirSY489pkAgoCeeeEInT560agwlJSX64Q9/qBUrVmj58uXKz8/X8uXLrRrDhPOt+czlPp8vbcby6quv6vbbb5eUXvVbG+7GsotwDwwMqL6+Xo8//rjy8/PPul46juvNN99UUVGRbrjhhoTWT8cxRCIRffzxx/rBD36gpqYmzZgx45zf06TjGHp7e9Xc3Kzm5ma1trZqcHBQO3fuPOv66TgGJ2erOV3H8vzzz8vj8Wjt2rWS0qv+tDhx2IWw6SLco6Ojqq+v15o1a1RVVSVJKi4uVjgcltfrVTgcVlFRkaT0HNcHH3ygPXv2qKWlRcPDw+rv79fDDz9s1Rh8Pp98Pp+WLFkiSVq5cqUaGxutGsPbb7+tK664Il5jVVWVPvzwQ6vGMOF8az5zeWdnZ8rH8rvf/U579+7VSy+9FA/qdKrf2s7dlotwG2P0xBNPaMGCBaqtrY0vLy8vV1NTkySpqalJFRUV8eXBYFAjIyPq6OhQe3u7Fi9enIrS4x566CG1tLRoz5492rJli2655RY9++yzVo1hzpw58vl8+vzzzyVJf/zjH3XVVVdZNYZ58+bpo48+0uDgoIwxVo5hwvnW7PV6NXPmTO3bt0/GmNO2SYWWlha98MILev755zVjxoz48rSqP6lf1ybZ3r17TVVVlamoqDDPPfdcqsuZ0vvvv28WLVpkVq9ebdauXWvWrl1r9u7da7q7u819991nKisrzX333We+/PLL+DbPPfecqaioMFVVVRdtj4BEvfPOO/G9ZWwbw8cff2y++93vmtWrV5u6ujrT09Nj3Ri2bt1qqqurjd/vNw8//LAZHh5O+zH85Cc/Md/5znfMddddZ2677TbzyiuvXFDNbW1txu/3m4qKCrN582YTi8VSVv+dd95pbr/99vh7+mc/+1na1c8pfwEgA1k7LQMAODvCHQAyEOEOABmIcAeADES4A0AGItwBIAMR7gCQgf4/Sz+0SVPXLqIAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(np.abs(np.fft.rfft(data_sum[1])))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7fd763ee4a00>]"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX0AAAD4CAYAAAAAczaOAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/MnkTPAAAACXBIWXMAAAsTAAALEwEAmpwYAAAc8ElEQVR4nO3df3BUZb7n8XenQwCJ4CTaadDcODBx18EJujVezYpxTSYJoROmRe6dcqu0qp1Z3JRrikGcElkpoRxndB1vUXdXKjE1A/4xW0MBNqVdMzdFYyrZ1VFGwCyL45D1ZgyM6daEBAJJOuk8+0dII79MSJ8kp3M+r6pUp58+p8/3gc6nn376/HAZYwwiIuIIadNdgIiITB2FvoiIgyj0RUQcRKEvIuIgCn0REQdJn+4CxnLPPfdw8803T3cZIiIp5eTJk3zwwQeXtds+9G+++Wb27t073WWIiKSU1atXX7Fd0zsiIg6i0BcRcRCFvoiIgyj0RUQcZMzQ37hxI4WFhVRWVibaXn75ZVasWEFVVRVPPvkkp0+fTjxWW1tLaWkp5eXlNDc3J9qPHj1KVVUVpaWlvPjii+iUPyIiU2/M0F+9ejX19fUXtd1333288847vP3229x6663U1tYC0NraSigUIhQKUV9fz5YtW4jH4wC88MILbN26lYaGBtra2mhqapqE7oiIyDcZM/TvvvtuFixYcFHb8uXLSU8f2dvzzjvvpKOjA4BwOIzP5yMjI4Pc3Fzy8vJoaWkhGo3S29vLXXfdhcvlwu/3Ew6HJ6E7IiLyTZKe09+zZw9FRUUARCIRvF5v4rGcnBwikchl7V6vl0gkkuymxeY++KyT45Ez012GiHxNUgdnbd++HbfbzapVqwCuOE/vcrmu2i4z24/q/ghA2y9901yJiIyacOi/9dZbNDY2smPHjkSAe73exFQPjIz8PR7PZe0dHR14PJ4kyhYRkYmY0PROU1MTb7zxBtu3b2fu3LmJ9uLiYkKhELFYjPb2dtra2igoKMDj8TBv3jyOHDmCMYZgMEhJSYllnRARkfEZc6S/fv16PvzwQ06dOkVRURFPPfUUdXV1xGIxAoEAAMuWLWPr1q3k5+dTUVHBypUrcbvdbN68GbfbDYzsvbNx40b6+/spKipKfA8gIiJTx2X3a+SuXr1aJ1xLUbc+GwI0py8yHa6WnToiV0TEQRT6IiIOotAXEXEQhb6IiIMo9EVEHEShLyLiIAp9EREHUeiLiDiIQl9ExEEU+iIiDqLQFxFxEIW+iIiDKPRFRBxEoS8i4iAKfRERB1Hoi4g4iEJfRMRBFPoiIg6i0BcRcRCFvoiIgyj0RUQcRKEvIuIgCn0REQdR6IuIOMiYob9x40YKCwuprKxMtHV3dxMIBCgrKyMQCNDT05N4rLa2ltLSUsrLy2lubk60Hz16lKqqKkpLS3nxxRcxxljcFRERGcuYob969Wrq6+svaqurq6OwsJCGhgYKCwupq6sDoLW1lVAoRCgUor6+ni1bthCPxwF44YUX2Lp1Kw0NDbS1tdHU1DQJ3RERkW8yZujffffdLFiw4KK2cDiM3+8HwO/3s3///kS7z+cjIyOD3Nxc8vLyaGlpIRqN0tvby1133YXL5cLv9xMOh63vjYiIfKMJzel3dnbi8XgA8Hg8dHV1ARCJRPB6vYnlcnJyiEQil7V7vV4ikUgydYuIyARY+kXulebpXS7XVdtFRGRqTSj0s7OziUajAESjUbKysoCREXxHR0diuUgkgsfjuay9o6Mj8UlBRESmzoRCv7i4mGAwCEAwGKSkpCTRHgqFiMVitLe309bWRkFBAR6Ph3nz5nHkyBGMMRetIyIiUyd9rAXWr1/Phx9+yKlTpygqKuKpp55i7dq1rFu3jt27d7Nw4UK2bdsGQH5+PhUVFaxcuRK3283mzZtxu93AyN47GzdupL+/n6KiIoqKiia3ZyIichmXsfkO86tXr2bv3r3TXYZMwK3PhgBo+6VvmisRcZ6rZaeOyBURcRCFvoiIgyj0RUQcRKEvIuIgCn0REQdR6IuIOIhCX0TEQRT6IiIOotAXEXEQhb6IiIMo9EVEHEShLyLiIAp9EREHUeiLiDiIQl9ExEEU+iIiDqLQFxFxEIW+iIiDKPRFRBxEoS8i4iAKfRERB1Hoi4g4iEJfRMRBFPoiIg6SVOjv2LEDn89HZWUl69evZ2BggO7ubgKBAGVlZQQCAXp6ehLL19bWUlpaSnl5Oc3NzUkXLyIi12bCoR+JRHjzzTfZs2cP77zzDvF4nFAoRF1dHYWFhTQ0NFBYWEhdXR0Ara2thEIhQqEQ9fX1bNmyhXg8bllHRERkbEmN9OPxOP39/QwNDdHf34/H4yEcDuP3+wHw+/3s378fgHA4jM/nIyMjg9zcXPLy8mhpaUm6AyIiMn4TDv2cnBwef/xxHnzwQZYvX05mZibLly+ns7MTj8cDgMfjoaurCxj5ZOD1ei9aPxKJJFm+iIhciwmHfk9PD+FwmHA4THNzM319fezbt++qyxtjLmtzuVwT3byIiEzAhEP/vffe45ZbbiErK4tZs2ZRVlbG4cOHyc7OJhqNAhCNRsnKygLA6/XS0dGRWD8SiSQ+EYiIyNSYcOgvWrSIjz/+mL6+PowxvP/++yxZsoTi4mKCwSAAwWCQkpISAIqLiwmFQsRiMdrb22lra6OgoMCSToiIyPikT3TFZcuWUV5ezkMPPUR6ejq33347P/rRjzh79izr1q1j9+7dLFy4kG3btgGQn59PRUUFK1euxO12s3nzZtxut2UdERGRsbnMlSbbbWT16tXs3bt3usuQCbj12RAAbb/0TXMlIs5ztezUEbkiIg6i0BcRcRCFvoiIgyj0RUQcRKEvIuIgCn0REQdR6IuIOIhCX0TEQRT6IiIOotAXEXEQhb6IiIMo9EVEHEShLyLiIAp9EREHUeiLiDiIQl9ExEEU+iIiDqLQFxFxEIW+iIiDKPRFRBxEoS8i4iAKfRERB1Hoi4g4iEJfRMRBkgr906dPU1NTw4oVK6ioqODw4cN0d3cTCAQoKysjEAjQ09OTWL62tpbS0lLKy8tpbm5OungREbk2SYX+z3/+c+6//37+8Ic/sG/fPpYsWUJdXR2FhYU0NDRQWFhIXV0dAK2trYRCIUKhEPX19WzZsoV4PG5JJ0REZHwmHPq9vb0cPHiQNWvWAJCRkcH8+fMJh8P4/X4A/H4/+/fvByAcDuPz+cjIyCA3N5e8vDxaWlqS74GIiIzbhEO/vb2drKwsNm7ciN/vZ9OmTZw7d47Ozk48Hg8AHo+Hrq4uACKRCF6vN7F+Tk4OkUgkyfJFRORaTDj0h4aGOHbsGI888gjBYJC5c+cmpnKuxBhzWZvL5Zro5kVEZAImHPperxev18uyZcsAWLFiBceOHSM7O5toNApANBolKysrsXxHR0di/UgkkvhEICIiU2PCoX/TTTfh9Xr57LPPAHj//fdZsmQJxcXFBINBAILBICUlJQAUFxcTCoWIxWK0t7fT1tZGQUFB8j0QEZFxS09m5eeff54NGzYwODhIbm4uv/jFLxgeHmbdunXs3r2bhQsXsm3bNgDy8/OpqKhg5cqVuN1uNm/ejNvttqQTIiIyPkmF/u23387evXsva9+5c+cVl6+urqa6ujqZTYqISBJ0RK6IiIMo9EVEHEShLyLiIAp9EREHUejb1F8iZ6j852bO9A9OdykiMoMo9G3qv/3Lpxw9eZr/3do53aWIyAyi0Lc5nalCRKyk0LepK5yqSEQkaQp92xpJfQ30RcRKCn2bGh3p60ykImIlhb5Njc7upCnzRcRCCn2bGj4/1NdAX0SspNC3OZdm9UXEQgp9m9LeOyIyGRT6NpXIfA30RcRCCn2bGr2msDJfRKyk0Lc57bIpIlZS6NtUYj/96S1jwoy+lBCxJYW+zWmgLyJWUujblEEjZRGxnkLfpi5M76TmUF+zOyL2pNC3qQvn3pneOkRkZlHo25TRWTZFZBIo9G0qMT2i1BcRCyUd+vF4HL/fzxNPPAFAd3c3gUCAsrIyAoEAPT09iWVra2spLS2lvLyc5ubmZDftCCk7pz/dBYjIFSUd+m+++SZLlixJ3K+rq6OwsJCGhgYKCwupq6sDoLW1lVAoRCgUor6+ni1bthCPx5Pd/Iyl0BSRyZBU6Hd0dNDY2MiaNWsSbeFwGL/fD4Df72f//v2Jdp/PR0ZGBrm5ueTl5dHS0pLM5mc2fZErIpMgqdB/6aWXeOaZZ0hLu/A0nZ2deDweADweD11dXQBEIhG8Xm9iuZycHCKRSDKbn9FSfT99HZErYk8TDv13332XrKws7rjjjnEtf6UQ0Hllrm70n0vZKSJWSp/oiocOHeLAgQM0NTUxMDBAb28vGzZsIDs7m2g0isfjIRqNkpWVBYDX66WjoyOxfiQSSXwikMuZxK1SX0SsM+GR/tNPP01TUxMHDhzgtdde49577+XVV1+luLiYYDAIQDAYpKSkBIDi4mJCoRCxWIz29nba2tooKCiwpBMzWopmfoqWLTLjTXikfzVr165l3bp17N69m4ULF7Jt2zYA8vPzqaioYOXKlbjdbjZv3ozb7bZ68zPG6HSYwlNErGRJ6N9zzz3cc889AHzrW99i586dV1yuurqa6upqKzY54yWmd5T6ImIhHZFrU4kvclN0rK83KxF7UujblEb6IjIZFPp2pTl9EZkECn2bS9WDnFJ1WkpkplPo25S55FZExAoKfZsySn0RmQQKfZsanR5J1WmSFJ2VEpnxFPo2pXPviMhkUOjblEJfRCaDQt+mNKUvIpNBoW9zqbrLpojYk0LfpnTCNRGZDAp9m0vVgX6q1i0y0yn0bepCaCo9RcQ6Cn2bSuynr8wXEQsp9G3qwqmVU1OqHlQmMtMp9G1OI30RsZJC36Z0YXQRmQwKfZtK7LKZopmfqnWLzHQKfZvSEbkiMhkU+naVOPeOYl9ErKPQt6lUj/pUr19kplLo25wG+iJiJYW+TV04945SX0Sso9C3qcQXuSma+fouQsSeJhz6X3zxBY8++igVFRX4fD527twJQHd3N4FAgLKyMgKBAD09PYl1amtrKS0tpby8nObm5uSrn8F0ERURmQwTDn23282zzz7L73//e373u9/x29/+ltbWVurq6igsLKShoYHCwkLq6uoAaG1tJRQKEQqFqK+vZ8uWLcTjccs6MtNcuEauiIh1Jhz6Ho+HpUuXApCZmcnixYuJRCKEw2H8fj8Afr+f/fv3AxAOh/H5fGRkZJCbm0teXh4tLS3J92CGMim+y2ZqVi0y81kyp3/ixAk++eQTli1bRmdnJx6PBxh5Y+jq6gIgEong9XoT6+Tk5BCJRKzY/Iym8BQRKyUd+mfPnqWmpobnnnuOzMzMqy53pRGry+VKdvMzltEhuSIyCZIK/cHBQWpqaqiqqqKsrAyA7OxsotEoANFolKysLAC8Xi8dHR2JdSORSOITgVxdqu6ymaKzUiIz3oRD3xjDpk2bWLx4MYFAINFeXFxMMBgEIBgMUlJSkmgPhULEYjHa29tpa2ujoKAguepnsFQ/4ZqI2FP6RFf86KOP2LdvH7fddhs//OEPAVi/fj1r165l3bp17N69m4ULF7Jt2zYA8vPzqaioYOXKlbjdbjZv3ozb7bamFzOQZndEZDJMOPS///3v8+mnn17xsdF99i9VXV1NdXX1RDfpKCm/n36q1i0yw+mIXJtL1Tl9EbEnhb5N6cLoIjIZFPo25WJkd9bhFE19fUIRsSeFvk2500ZCPzY0PM2ViMhMotC3qXT3SOgPxjViFhHrKPRtyn3+aOWheGqO9FN0VkpkxlPo29TQ8EhqDqZo6ItY5bMve3l618cpOwCyG4W+TY3O5cc0vSMO99NdH7Pn0An+z8mesReWMSn0bWpgaORaA6k60tdblYg9KfRtanSkn6qhL2I1DSSsodC3qQGFvohMAoW+DcWHTeKL3NhQao5vUvWKX2JfuvqGNRT6NvT1A7L6h3QdYRHQ9I5VFPo21D94Ieh7zg1OYyUi008jfGsp9JNwPHKGP3ectvx5z/QPJX4/dS5m+fNPBY3KxCp6LVlrwufTFyj9pyYA2n7ps/R5e/pGRvfXz0mnWyN9EUBHeVtFI30bGg39W7PnpexIX8Qqo9M7qXrGWbtR6NtQ1/mg//aN8zgXiycO1Eol+vsUq4y+lOLDelFZQaFvgWGLX4x/6+4D4LuL5gNoikcE6//OnEqhb4Gvf/Fqhb92nuOG62bxb3KuB6Dtq7OWPr9IKhmd3hlS6FtCoW8Bq+fdj/2th9tyrmfpzSMj/aN/s34PocmmK2eJ1eKaM7SEQt8C3X3WTb909g7QcrKHwsXZeK6fg3f+HD78107Lnn+qnB1Ive8hxN40vWMNhb4Fui0c6e/60wmMgfKlXgBWfm8hB/4c5YuePsu2MRW6zl74N9Efq1hB0zvWUOhPUM/XRvc9Fo30/9fxr/in/X/hB7d7El/iBu67lTSXi5r/ediy7UyFzt6BxO9WfhIS59LgwRpTHvpNTU2Ul5dTWlpKXV3dVG/eMk1/+TLx+6mzExvpG2M42d3HW4dPsPbNP/Horz/g77Ku45U1yxLL5GZdx6/+cRmHPu+m5FeN/KrhUz7666mLTtVgR4c+7078/pfImekrRGYMzelbY0qPyI3H42zdupXf/OY35OTksGbNGoqLi/nOd75j+ba6zsb48xenMYwc1DFsRm6NMRjDVe8Pn79vMAzGDf2Dcc7FRn76B+OcOhvj/33Zy5H2br7jyaQ1OvK7MYZYfJiuszF6+gbpPjdIT9/5n3ODdPdd3P7lmQH+2nmOvvPhnT0vg//y4Hf4zw8sYd7si/9bKgsWcWv2PF75l0/5H++28s8HWnGnufDOn8OiG+bgmT+H+XNmMX9OOvPnziJzdjqz09PISE9jlnvkNsN94X6620Way0WaC9LOX4s3zeUiLY1Eu8vlwjXafn6ZuDHEh4eJD8PQ8DDDo7fGEBsydJ+L8dXZGP/3ZA+7PzpB4eJsjv6th61vH+OnpbeR78kkZ/4c5sxKw+XSGVVkbPFhw9mBkb3jvjozgDFGr50kTWnot7S0kJeXR25uLgA+n49wODwpof/0riO8++mXYy94DebOcnP9nHS+feM8qv/DEn68fDHbG1t5o/lfeffTLznTP8jVPoG601wsmDuLG+bOYsF1s7j5hrn8+yU38u2b5nHnLTewdNF80tKu/mK+4+YFvPn43/NV7wAf/fUUR0/2cPJUHye6+/jkb6c53T/Emf7BxHn4p9P1s9NZdeciXli1lA8+6+LpXUf4T2/+6aJlZqenMTfDTXpaWuLNZ/TNZvTNZ/RNJ9m/8aTGh0kOLi9d/dJTTpuLHrt03UuWvfTxb6jtm7Yz1rYuf2ys7V7LuuOvyxjD2Vg8cVDWC28f4xe///NFA5rRl8bX3whGf03cnl/qwv0Ly4/7pTXOBcf7fON54/q33uv57//x343zGcdvSkM/Eong9XoT93NycmhpaZmUbf3qH+/kL5EzF4fJ125Hw8TFxSNcuPC4O83F3Aw312W4mZPuvmIoP1txO7flXM/Bti68C+aycMEcFsydddHPDdeNjL6tGKHcmDmb8qXexBe9lxoYitPbP0QsPkxs6PzP+d8H42bkdngYzKWfgEb+yK70ief84qSnuUhLc43cukZu3efbZqW5uOG6DG7MzCA7czbu8/9Wpd/N4eB//QGHP++mvescX/XG6BuMMzAYp28wzmDcwPltjNZjzm9/2Ixsd3jYJH2qxWRWT/b/7dK1L30610WPua762JUaXFweduPfruuqj1/e5asvO9a2vmk7V173Qkvm7HT+Lvs6/v7WLA78OUrH6f7Ea3rw/ABn9H1i9PX69cYLj5nEfXPJY2MZ77Uhxj0+GOeCS27KHO8zXpMpDf0r/eNN1ke1rHkZ3Ls4e1Ke++vcaS7+4fu5/MP3cyd9W+MxO93N7Ez3dJdxkdnpbu5dnD0l/x8ycz2+/NvTXcKMMKVf5Hq9Xjo6OhL3I5EIHo9nKksQEXG0KQ39733ve7S1tdHe3k4sFiMUClFcXDyVJYiIONqUTu+kp6ezefNmfvKTnxCPx3n44YfJz8+fyhJERBxtyi+i8sADD/DAAw9M9WZFRAQdkSsi4igKfRERB1Hoi4g4iEJfRMRBpvyL3Gt18uRJVq9ePd1liIiklJMnT16x3WXGe4yxiIikPE3viIg4iEJfRMRBFPoiIg6i0BcRcRCFvoiIgyj0RUQcZEaGfqpcfP2LL77g0UcfpaKiAp/Px86dOwHo7u4mEAhQVlZGIBCgp6cnsU5tbS2lpaWUl5fT3Nw8XaVfJB6P4/f7eeKJJ4DUq//06dPU1NSwYsUKKioqOHz4cMr1YceOHfh8PiorK1m/fj0DAwO278PGjRspLCyksrIy0TaRmo8ePUpVVRWlpaW8+OKL477S1WT14eWXX2bFihVUVVXx5JNPcvr0aXv1wcwwQ0NDpqSkxHz++edmYGDAVFVVmePHj093WVcUiUTM0aNHjTHGnDlzxpSVlZnjx4+bl19+2dTW1hpjjKmtrTWvvPKKMcaY48ePm6qqKjMwMGA+//xzU1JSYoaGhqat/lG//vWvzfr1683atWuNMSbl6v/Zz35mdu3aZYwxZmBgwPT09KRUHzo6OsyDDz5o+vr6jDHG1NTUmD179ti+Dx9++KE5evSo8fl8ibaJ1Pzwww+bQ4cOmeHhYfPjH//YNDY2TmsfmpubzeDgoDHGmFdeecV2fZhxI/2vX3w9IyMjcfF1O/J4PCxduhSAzMxMFi9eTCQSIRwO4/f7AfD7/ezfvx+AcDiMz+cjIyOD3Nxc8vLyJu0aw+PV0dFBY2Mja9asSbSlUv29vb0cPHgwUX9GRgbz589PqT7AyKet/v5+hoaG6O/vx+Px2L4Pd999NwsWLLio7Vprjkaj9Pb2ctddd+FyufD7/VP6936lPixfvpz09JGTHdx5552JqwXapQ8zLvSvdPH1SCQyjRWNz4kTJ/jkk09YtmwZnZ2dictIejweurq6AHv27aWXXuKZZ54hLe3CSymV6m9vbycrK4uNGzfi9/vZtGkT586dS6k+5OTk8Pjjj/Pggw+yfPlyMjMzWb58eUr1YdS11nxpu9frtU1fAPbs2UNRURFgnz7MuNA3U3jxdaucPXuWmpoannvuOTIzM6+6nN369u6775KVlcUdd9wxruXtVj/A0NAQx44d45FHHiEYDDJ37txv/B7Ijn3o6ekhHA4TDodpbm6mr6+Pffv2XXV5O/ZhLFer2c592b59O263m1WrVgH26YPtT7h2rVLt4uuDg4PU1NRQVVVFWVkZANnZ2USjUTweD9FolKysLMB+fTt06BAHDhygqamJgYEBent72bBhQ8rUDyM1eb1eli1bBsCKFSuoq6tLqT6899573HLLLYkay8rKOHz4cEr1YdS11nxpe0dHhy368tZbb9HY2MiOHTsSAW6XPsy4kX4qXXzdGMOmTZtYvHgxgUAg0V5cXEwwGAQgGAxSUlKSaA+FQsRiMdrb22lra6OgoGA6Sgfg6aefpqmpiQMHDvDaa69x77338uqrr6ZM/QA33XQTXq+Xzz77DID333+fJUuWpFQfFi1axMcff0xfXx/GmJTsw6hrrdnj8TBv3jyOHDmCMeaidaZLU1MTb7zxBtu3b2fu3LmJdtv0YdK+Ip5GjY2NpqyszJSUlJjXX399usu5qoMHD5rbbrvNVFZWmlWrVplVq1aZxsZG09XVZR577DFTWlpqHnvsMXPq1KnEOq+//ropKSkxZWVlU7qXwlj++Mc/JvbeSbX6jx07Zh566CFTWVlpqqurTXd3d8r1Ydu2baa8vNz4fD6zYcMGMzAwYPs+/PSnPzX33Xef+e53v2vuv/9+s2vXrgnV3NLSYnw+nykpKTFbtmwxw8PD09qHH/zgB6aoqCjxN/3888/bqg86tbKIiIPMuOkdERG5OoW+iIiDKPRFRBxEoS8i4iAKfRERB1Hoi4g4iEJfRMRB/j8lgM14XTmZ/wAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(np.abs(np.fft.rfft(data_sum[2])))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "interpreter": {
   "hash": "a8f61be024eba58adef938c9aa1e29e02cb3dece83a5348b1a2dafd16a070453"
  },
  "kernelspec": {
   "display_name": "Python 3.8.8 64-bit ('base': conda)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.7"
  },
  "orig_nbformat": 4
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
